Part Number Hot Search : 
PD57060S F2CRP00 U1600A 621509 P26AC TC0207A FS15FL LM139N
Product Description
Full Text Search
 

To Download EVAL-ADM1168LQEBZ Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  super sequencer and monitor with nonvolatile fault recording adm1168 rev. 0 information furnished by analog devices is believed to be accurate and reliable. however, no responsibility is assumed by analog devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. specifications subject to change without notice. no license is granted by implication or otherwise under any patent or patent rights of analog devices. trademarks and registered trademarks are the property of their respective owners. one technology way, p.o. box 9106, norwood, ma 02062-9106, u.s.a. tel: 781.329.4700 www.analog.com fax: 781.461.3113 ?2011 analog devices, inc. all rights reserved. features complete supervisory and sequencing solution for up to 8 supplies 16 event deep black box nonvolatile fault recording 8 supply fault detectors enable supervision of supplies to <0.5% accuracy at all voltages at 25c <1.0% accuracy across all voltages and temperatures 4 selectable input attenuators allow supervision of supplies to 14.4 v on vh 6 v on vp1 to vp3 (vpx) 4 dual-function inputs, vx1 to vx4 (vxx) high impedance input to supply fault detector with thresholds between 0.573 v and 1.375 v general-purpose logic input 8 programmable driver outputs, pdo1 to pdo8 (pdox) open-collector with external pull-up push/pull output, driven to vddcap or vpx open-collector with weak pull-up to vddcap or vpx internally charge-pumped high drive for use with external nfet (pdo1 to pdo6 only) sequencing engine (se) implements state machine control of pdo outputs state changes conditional on input events enables complex control of boards power-up and power-down sequence control fault event handling interrupt generation on warnings watchdog function can be integrated in se program software control of sequencing through smbus device powered by the highest of vpx, vh for improved redundancy user eeprom: 256 bytes industry-standard 2-wire bus interface (smbus) guaranteed pdo low with vh, vpx = 1.2 v available in 32-lead, 7 mm 7 mm lqfp applications central office systems servers/routers multivoltage system line cards dsp/fpga supply sequencing in-circuit testing of margined supplies functional block diagram pdo7 pdo8 pdognd vdd arbitrator gnd vccp vx1 vx2 vx3 vx4 vp1 vp2 vp3 vh agnd v ddcap programmable reset generators (sfds) dual- function inputs (logic inputs or sfds) sequencing engine configurable output drivers (lv capable of driving logic signals) pdo1 pdo2 pdo3 pdo4 pdo5 pdo6 sd a scl a 1 a 0 smbus interface refout refgnd vref adm1168 configurable output drivers (hv capable of driving gates of nfet) eeprom fault recording 09474-001 figure 1. general description the adm1168 super sequencer? is a configurable supervisory/ sequencing device that offers a single-chip solution for supply monitoring and sequencing in multiple supply systems. the device also provides up to eight programmable inputs for monitoring undervoltage faults, overvoltage faults, or out-of-window faults on up to eight supplies. in addition, eight programmable outputs can be used as logic enables. six of these programmable outputs can also provide up to a 12 v output for driving the gate of an nfet that can be placed in the path of a supply. the logical core of the device is a sequencing engine. this state machine-based construction provides up to 63 different states. this design enables very flexible sequencing of the outputs based on the condition of the inputs. a block of nonvolatile eeprom is available that can be used to store user-defined information and may also be used to hold a number of fault records that are written by the sequencing engine defined by the user when a particular fault or sequence occurs. the adm1168 is controlled via configuration data that can be programmed into an eeprom. the whole configuration can be programmed using an intuitive gui-based software package provided by analog devices, inc. for more information about the adm1168 register map, refer to the an-721 application note .
adm1168 rev. 0 | page 2 of 28 table of contents features .............................................................................................. 1 ? applications....................................................................................... 1 ? functional block diagram .............................................................. 1 ? general description ......................................................................... 1 ? revision history ............................................................................... 2 ? detailed block diagram .................................................................. 3 ? specifications..................................................................................... 4 ? absolute maximum ratings............................................................ 6 ? thermal resistance ...................................................................... 6 ? esd caution.................................................................................. 6 ? pin configuration and function descriptions............................. 7 ? typical performance characteristics ............................................. 8 ? powering the adm1168 ................................................................ 10 ? inputs................................................................................................ 11 ? supply supervision..................................................................... 11 ? programming the supply fault detectors............................... 11 ? input comparator hysteresis.................................................... 12 ? input glitch filtering ................................................................. 12 ? supply supervision with vxx inputs....................................... 13 ? vxx pins as digital inputs ........................................................ 13 ? outputs ............................................................................................ 14 ? supply sequencing through configurable output drivers. 14 ? default output configuration.................................................. 14 ? sequencing engine ......................................................................... 15 ? overview ..................................................................................... 15 ? warnings...................................................................................... 15 ? smbus jump (unconditional jump)........................................ 15 ? sequencing engine application example ............................... 16 ? fault and status reporting........................................................ 17 ? nonvolatile black box fault recording................................... 17 ? black box writes with no external supply ............................ 18 ? applications diagram .................................................................... 19 ? communicating with the adm1168........................................... 20 ? configuration download at power-up................................... 20 ? updating the configuration ..................................................... 20 ? updating the sequencing engine............................................. 21 ? internal registers........................................................................ 21 ? eeprom ..................................................................................... 21 ? serial bus interface..................................................................... 22 ? smbus protocols for ram and eeprom.............................. 24 ? write operations ........................................................................ 24 ? read operations......................................................................... 25 ? outline dimensions ....................................................................... 27 ? ordering guide .......................................................................... 27 ? revision history 4 /11revision 0: initial version
adm1168 rev. 0 | page 3 of 28 detailed block diagram gpi signal conditioning sfd gpi signal conditioning sfd sfd sfd selectable attenuator selectable attenuator device controller osc eeprom sda scl a1 a0 smbus interface adm1168 configurable output driver (hv) pdo1 pdo2 pdognd pdo3 gnd pdo4 pdo5 configurable output driver (hv) pdo6 configurable output driver (lv) pdo7 configurable output driver (lv) pdo8 sequencing engine vx2 vx3 vp2 vp3 vh vp1 vx1 agnd vx4 vdd arbitrator vccp reg 5.25v charge pump refout refgnd vref vddcap 09474-002 fault recording figure 2. detailed block diagram
adm1168 rev. 0 | page 4 of 28 specifications vh = 3.0 v to 14.4 v 1 , vpx = 3.0 v to 6.0 v 1 , t a = ?40c to +85c, unless otherwise noted. table 1. parameter min typ max unit test conditions/comments power supply arbitration vh, vpx 3.0 v minimum supply required on one of the vh, vpx pins vpx 6.0 v maximum vddcap = 5.1 v typical vh 14.4 v vddcap = 4.75 v vddcap 2.7 4.75 5.4 v regulated ldo output c vddcap 10 f minimum recommended decoupling capacitance power supply supply current, i vh , i vpx 4.2 6 ma vddcap = 4.75 v, pdo1 to pdo8 off additional currents all pdox fet drivers on 1 ma vddcap = 4.75 v, pdo1 to pdo6 loaded with 1 a each, pdo7 to pdo8 off current available from vddcap 2 ma maximum additional load that can be drawn from all pdo pull-ups to vddcap eeprom erase current 10 ma 1 ms duration only, vddcap = 3 v supply fault detectors vh pin input impedance 52 k input attenuator error 0.05 % midrange and high range detection ranges high range 6 14.4 v midrange 2.5 6 v vpx pins input impedance 52 k input attenuator error 0.05 % low range and midrange detection ranges midrange 2.5 6 v low range 1.25 3 v ultralow range 0.573 1.375 v no input attenuation error vxx pins input impedance 1 m detection ranges ultralow range 0.573 1.375 v no input attenuation error absolute accuracy 1 % internal reference vref error + dac nonlinearity + comparator offset error threshold resolution 8 bits digital glitch filter 0 s mi nimum programmable filter length 100 s maximum programmable filter length reference output reference output voltage 2.043 2.048 2.053 v no load load regulation ?0.25 mv sourcing current 0.25 mv sinking current minimum load capacitance 1 f capacitor required for decoupling, stability psrr 60 db dc
adm1168 rev. 0 | page 5 of 28 parameter min typ max unit test conditions/comments programmable driver outputs high voltage (charge pump) mode (pdo1 to pdo6) output impedance 500 k v oh 11 12.5 14 v i oh = 0 a 10.5 12 13.5 v i oh = 1 a i outavg 20 a 2 v < v oh < 7 v standard (digital output) mode (pdo1 to pdo8) v oh 2.4 v v pu (pull-up to vddcap or vpx) = 2.7 v, i oh = 0.5 ma 4.5 v v pu to vpx = 6.0 v, i oh = 0 ma v pu ? 0.3 v v pu 2.7 v, i oh = 0.5 ma v ol 0 0.50 v i ol = 20 ma i ol 2 20 ma maximum sink current per pdo pin i sink 2 60 ma maximum total sink for all pdo pins r pull-up 16 20 29 k internal pull-up i source (vpx) 2 2 ma current load on any vpx pull-ups, that is, total source current available through any number of pdo pull-up switches configured onto any one vpx pin three-state output leakage current 10 a v pdo = 14.4 v oscillator frequency 90 100 110 khz all on-chip time delays derived from this clock digital inputs (vxx, a0, a1) input high voltage, v ih 2.0 v maximum v in = 5.5 v input low voltage, v il 0.8 v maximum v in = 5.5 v input high current, i ih ?1 a v in = 5.5 v input low current, i il 1 a v in = 0 v input capacitance 5 pf programmable pull-down current, i pull-down 20 a vddcap = 4.75 v, t a = 25c, if known logic state is required serial bus digital inputs (sda, scl) input high voltage, v ih 2.0 v input low voltage, v il 0.8 v output low voltage, v ol 2 0.4 v i out = ?3.0 ma serial bus timing see figure 27 clock frequency, f sclk 400 khz bus free time, t buf 1.3 s start setup time, t su;sta 0.6 s stop setup time, t su;sto 0.6 s start hold time, t hd;sta 0.6 s scl low time, t low 1.3 s scl high time, t high 0.6 s scl, sda rise time, t r 300 ns scl, sda fall time, t f 300 ns data setup time, t su;dat 100 ns data hold time, t hd;dat 250 ns input low current, i il 1 a v in = 0 v sequencing engine timing state change time 10 s 1 at least one of the vh, vpx pins must be 3.0 v to maintain the device supply on vddcap. 2 specification is not production tested but is supported by characterization data at initial product release.
adm1168 rev. 0 | page 6 of 28 absolute maximum ratings table 2. parameter rating voltage on vh pin 16 v voltage on vpx pins 7 v voltage on vxx pins ?0.3 v to +6.5 v voltage on a0, a1 pins ?0.3 v to +7 v voltage on refout pin 5 v voltage on vddcap, vccp pins 6.5 v voltage on pdox pins 16 v voltage on sda, scl pins 7 v voltage on gnd, agnd, pdognd, refgnd pins ?0.3 v to +0.3 v input current at any pin 5 ma package input current 20 ma maximum junction temperature (t j max) 150c storage temperature range ?65c to +150c lead temperature, soldering vapor phase, 60 sec 215c esd rating, all pins 2000 v stresses above those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. thermal resistance ja is specified for the worst-case conditions, that is, a device soldered in a circuit board for surface-mount packages. table 3. thermal resistance package type ja unit 32-lead lqfp 54 c/w esd caution
adm1168 rev. 0 | page 7 of 28 pin configuration and fu nction descriptions nc = no connect. do not connect to this pin. 12 25 32 8 9 17 16 4 vx1 vx2 vx3 vx4 vp1 vp2 vp3 vh pdo1 pdo2 pdo3 pdo4 pdo5 pdo6 pdo7 pdo8 gnd vddcap sda scl a1 a0 vccp pdogn d agnd refgnd nc refout nc nc nc nc pin 1 indicator adm1168 top view (not to scale) 09474-003 figure 3. pin configuration table 4. pin function descriptions pin o. nemonic description 1 to 4 vx1 to vx4 high impedance inputs to supply fault detectors. fault thresholds can be set from 0.573 v to 1.375 v. alternatively, these pins can be used as general-purpose digital inputs. 5 to 7 vp1 to vp3 low voltage inputs to supply fault detectors. three inp ut ranges can be set by altering the input attenuation on a potential divider connected to these pins, the o utput of which connects to a supply fault detector. these pins allow thresholds from 2.5 v to 6 v, from 1.25 v to 3 v, and from 0.573 v to 1.375 v. 8 vh high voltage input to supply fault detectors. three inp ut ranges can be set by altering the input attenuation on a potential divider connected to this pin, the o utput of which connects to a supply fault detector. this pin allows thresholds from 6 v to 14.4 v and from 2.5 v to 6 v. 9 agnd 1 ground return for input attenuators. 10 refgnd 1 ground return for on-chip reference circuits. 11, 13 to 16 nc no connect. 12 refout reference output, 2.048 v. note that a capacitor must always be connected between this pin and refgnd. a 10 f capacitor is recommended for this purpose. 17 to 24 pdo8 to pdo1 programmable output drivers. 25 pdognd 1 ground return for output drivers. 26 vccp central charge-pump voltage of 5.25 v. a reservoir capacitor must be connected between this pin and gnd. a 10 f capacitor is recommended for this purpose. 27 a0 logic input. this pin sets the seventh bit of the smbus interface address. 28 a1 logic input. this pin sets the sixth bit of the smbus interface address. 29 scl smbus clock pin. bidirectional open drain requires external resistive pull-up. 30 sda smbus data pin. bidirectional open drain requires external resistive pull-up. 31 vddcap device supply voltage. linearly regulated from the high est of the vpx and vh pins to a typical of 4.75 v. a capacitor must be connected between this pin an d gnd. a 10 f capacitor is recommended for this purpose. 32 gnd 1 supply ground. 1 in a typical application, all ground pins are connected together.
adm1168 rev. 0 | page 8 of 28 typical performance characteristics 6 0 1 2 3 4 5 06 5 4 3 2 1 v vp1 (v) v vddcap (v) 09474-050 figure 4. v vddcap vs. v vp1 6 0 1 2 3 4 5 01 1412 10 8642 v vh (v) v vddcap (v) 6 09474-051 figure 5. v vddcap vs. v vh 5.0 4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0 0123456 v vp1 (v) i vp1 (ma) 09474-052 figure 6. i vp1 vs. v vp1 (vp1 as supply) 180 160 140 120 100 80 60 40 20 0 0123456 v vp1 (v) i vp1 (a) 09474-053 figure 7. i vp1 vs. v vp1 (vp1 not as supply) 5.0 4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0 01 141210 8642 v vh (v) i vh (ma) 6 09474-054 figure 8. i vh vs. v vh (vh as supply) 350 300 250 200 150 100 50 0 06 5 4 3 2 1 v vh (v) i vh (a) 09474-055 figure 9. i vh vs. v vh (vh not as supply)
adm1168 rev. 0 | page 9 of 28 14 12 10 8 6 4 2 0 0 15.0 12.5 10.0 7.5 5.0 2.5 i load (a) charge-pumped v pdo1 (v) 09474-056 figure 10. charge-pumped v pdo1 (fet drive mode) vs. i load 5.0 4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0 06 5 4 3 2 1 i load (ma) v pdo1 (v) vp1 = 5v vp1 = 3v 09474-057 figure 11. v pdo1 (strong pull-up to vpx) vs. i load 4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0 06 50 40 30 20 10 i load (a) v pdo1 (v) 0 vp1 = 5v vp1 = 3v 09474-058 figure 12. v pdo1 (weak pull-up to vpx) vs. i load 2.058 2.038 2.043 2.048 2.053 ?40 ?20 0 20 40 60 100 80 temperature ( c) refout (v) vp1 = 3.0v vp1 = 4.75v 09474-061 figure 13. refout vs. temperature
adm1168 rev. 0 | page 10 of 28 powering the adm1168 the adm1168 is powered from the highest voltage input on either the positive-only supply inputs (vpx) or the high voltage supply input (vh). this technique offers improved redundancy because the device is not dependent on any particular voltage rail to keep it operational. the same pins are used for supply fault detection (see the supply supervision section). a v dd arbitrator on the device chooses which supply to use. the arbitrator can be considered an oring of four low dropout regulators (ldos) together. a supply comparator chooses the highest input to provide the on-chip supply. there is minimal switching loss with this architecture (~0.2 v), resulting in the ability to power the adm1168 from a supply as low as 3.0 v. note that the supply on the vxx pins cannot be used to power the device. an external capacitor to gnd is required to decouple the on-chip supply from noise. this capacitor should be connected to the vddcap pin, as shown in figure 14 . the capacitor has another use during brownouts (momentary loss of power). under these conditions, when the input supply (vpx or vh) dips transiently below v dd , the synchronous rectifier switch immediately turns off so that it does not pull v dd down. the v dd capacitor can then act as a reservoir to keep the device active until the next highest supply takes over the powering of the device. a 10 f capacitor is recommended for this reservoir/decoupling function. the value of the vddcap capacitor may be increased if it is necessary to guarantee a complete fault record is written into eeprom should all supplies fail. the value of the capacitor to use is discussed in the black box writes with no external supply section. the vh input pin can accommodate supplies up to 14.4 v, which allows the adm1168 to be powered using a 12 v backplane supply. in cases where this 12 v supply is hot swapped, it is recommended that the adm1168 not be connected directly to the supply. suitable precautions, such as the use of a hot swap controller or rc filter network, should be taken to protect the device from transients that may cause damage during hot swap events. when two or more supplies are within 100 mv of each other, the supply that first takes control of v dd keeps control. for example, if vp1 is connected to a 3.3 v supply, v dd powers up to approximately 3.1 v through vp1. if vp2 is then connected to another 3.3 v supply, vp1 still powers the device, unless vp2 goes 100 mv higher than vp1. supply comparator in en out 4.75v ldo in en out 4.75v ldo in en out 4.75v ldo in en out 4.75v ldo vh vp3 vp2 vp1 v ddcap internal device supply 09474-022 figure 14. v dd arbitrator operation
adm1168 rev. 0 | page 11 of 28 inputs supply supervision the adm1168 has eight programmable inputs. four of these are dedicated supply fault detectors (sfds). these dedicated inputs are called vh and vpx (vp1 to vp3) by default. the other four inputs are labeled vxx (vx1 to vx4) and have dual functionality. they can be used either as sfds, with functionality similar to the vh and vpx, or as cmos-/ttl-compatible logic inputs to the device. therefore, the adm1168 can have up to eight analog inputs, a minimum of four analog inputs and four digital inputs, or a combination thereof. if an input is used as an analog input, it cannot be used as a digital input. therefore, a configuration requiring eight analog inputs has no available digital inputs. table 6 shows the details of each input. programming the supply fault detectors the adm1168 can have up to eight sfds on its eight input channels. these highly programmable reset generators enable the supervision of up to eight supply voltages. the supplies can be as low as 0.573 v and as high as 14.4 v. the inputs can be configured to detect an undervoltage fault (the input voltage drops below a preprogrammed value), an overvoltage fault (the input voltage rises above a preprogrammed value), or an out-of- window fault (the input voltage is outside a preprogrammed range). the thresholds can be programmed to an 8-bit resolution in registers provided in the adm1168. this translates to a voltage resolution that is dependent on the range selected. the resolution is given by step size = threshold range /255 therefore, if the high range is selected on vh, the step size can be calculated as follows: (14.4 v ? 6.0 v)/255 = 32.9 mv table 5 lists the upper and lower limits of each available range, the bottom of each range (v b ), and the range itself (v r ). table 5. voltage range limits voltage range (v) v b (v) v r (v) 0.573 to 1.375 0.573 0.802 1.25 to 3.00 1.25 1.75 2.5 to 6.0 2.5 3.5 6.0 to 14.4 6.0 8.4 the threshold value required is given by v t = ( v r n )/255 + v b where: v t is the desired threshold voltage (undervoltage or overvoltage). v r is the voltage range. n is the decimal value of the 8-bit code. v b is the bottom of the range. reversing the equation, the code for a desired threshold is given by n = 255 (v t ? v b )/ v r for example, if the user wants to set a 5 v overvoltage threshold on vp1, the code to be programmed in the ps1ovth register (as described in the an-721 application note ) is given by n = 255 (5 ? 2.5)/3.5 therefore, n = 182 (1011 0110 or 0xb6).
adm1168 rev. 0 | page 12 of 28 input comparator hysteresis the uv and ov comparators shown in figure 16 are always monitoring vpx. to avoid chatter (multiple transitions when the input is very close to the set threshold level), these comparators have digitally programmable hysteresis. the hysteresis can be programmed up to the values shown in table 6 . the hysteresis is added after a supply voltage goes out of tolerance. therefore, the user can program the amount above the undervoltage threshold to which the input must rise before an undervoltage fault is deasserted. similarly, the user can program the amount below the overvoltage threshold to which an input must fall before an overvoltage fault is deasserted. the hysteresis value is given by v hyst = v r n thresh /255 where: v hyst is the desired hysteresis voltage. n thresh is the decimal value of the 5-bit hysteresis code. note that n thresh has a maximum value of 31. the maximum hysteresis for the ranges is listed in table 6 . input glitch filtering the final stage of the sfds is a glitch filter. this block provides time-domain filtering on the output of the sfd comparators, which allows the user to remove any spurious transitions such as supply bounce at turn-on. the glitch filter function is in addition to the digitally programmable hysteresis of the sfd comparators. the glitch filter timeout is programmable up to 100 s. for example, when the glitch filter timeout is 100 s, any pulse appearing on the input of the glitch filter block that is less than 100 s in duration is prevented from appearing on the output of the glitch filter block. any input pulse that is longer than 100 s appears on the output of the glitch filter block. the output is delayed with respect to the input by 100 s. the filtering process is shown in figure 15 . t 0 t gf t 0 t gf t 0 t gf t 0 t gf input input pulse shorte r than glitch filter timeout input pulse longe r than glitch filter timeout output programmed timeout programmed timeout input output 09474-024 figure 15. input glitch filter function + ? + ? uv comparator vref fault type select ov comparator fault output glitch filter vpx mid low range select ultra low 09474-023 figure 16. supply fault detector block table 6. input functions, thresholds, and ranges input function voltage range (v) maximum hysteresis voltage resolution (mv) glitch filter (s) vh high voltage analog input 2.5 to 6.0 425 mv 13.7 0 to 100 6.0 to 14.4 1.02 v 32.9 0 to 100 vpx positive analog input 0.573 to 1.375 97.5 mv 3.14 0 to 100 1.25 to 3.00 212 mv 6.8 0 to 100 2.5 to 6.0 425 mv 13.7 0 to 100 vxx high-z analog input 0.573 to 1.375 97.5 mv 3.14 0 to 100 digital input 0 to 5.0 not appl icable not applicable 0 to 100
adm1168 rev. 0 | page 13 of 28 supply supervision with vxx inputs the vxx inputs have two functions. they can be used as either supply fault detectors or as digital logic inputs. when selected as analog (sfd) inputs, the vxx pins have functionality that is very similar to the vh and vpx pins. the primary difference is that the vxx pins have only one input range: 0.573 v to 1.375 v. therefore, these inputs can directly supervise only the very low supplies. however, the input impedance of the vxx pins is high, allowing an external resistor divide network to be connected to the pin. thus, potentially any supply can be divided down into the input range of the vxx pin and supervised. this enables the adm1168 to monitor other supplies, such as +24 v, +48 v, and ?5 v. an additional supply supervision function is available when the vxx pins are selected as digital inputs. in this case, the analog function is available as a second detector on each of the dedicated analog inputs, vpx and vh. the analog function of vx1 is mapped to vp1, vx2 is mapped to vp2, and so on. vx4 is mapped to vh. in this case, these sfds can be viewed as secondary or warning sfds. the secondary sfds are fixed to the same input range as the primary sfds. they are used to indicate warning levels rather than failure levels. this allows faults and warnings to be generated on a single supply using only one pin. for example, if vp1 is set to output a fault when a 3.3 v supply drops to 3.0 v, vx1 can be set to output a warning at 3.1 v. warning outputs are available for readback from the status registers. they are also ored together and fed into the se, allowing warnings to generate interrupts on the pdos. therefore, in this example, if the supply drops to 3.1 v, a warning is generated, and remedial action can be taken before the supply drops out of tolerance. vxx pins as digital inputs as described in the supply supervision with vxx inputs section, the vxx input pins on the adm1168 have dual functionality. the second function is as a digital logic input to the device. therefore, the adm1168 can be configured for up to four digital inputs. these inputs are ttl-/cmos-compatible inputs. standard logic signals can be applied to the pins: reset from reset generators, pwrgd signals, fault flags, manual resets, and more. these signals are available as inputs to the se and, therefore, can be used to control the status of the pdos. the inputs can be configured to detect either a change in level or an edge. when configured for level detection, the output of the digital block is a buffered version of the input. when configured for edge detection, a pulse of programmable width is output from the digital block, when the logic transition is detected. the width is programmable from 0 s to 100 s. the digital blocks feature the same glitch filter function that is available on the sfds. this function enables the user to ignore spurious transitions on the inputs. for example, the filter can be used to debounce a manual reset switch. when configured as digital inputs, each vxx pin has a weak (10 a) pull-down current source available for placing the input into a known condition, even if left floating. the current source, if selected, weakly pulls the input to gnd. detector vxx (digital input) glitch filter digitial threshold = 1.4v to sequencing engine + ? 09474-027 figure 17. vxx digital input function
adm1168 rev. 0 | page 14 of 28 outputs supply sequencing through configurable output drivers supply sequencing is achieved with the adm1168 using the programmable driver outputs (pdos) on the device as control signals for supplies. the output drivers can be used as logic enables or as fet drivers. the sequence in which the pdos are asserted (and, therefore, the supplies are turned on) is controlled by the sequencing engine (se). the se determines what action is taken with the pdos, based on the condition of the adm1168 inputs. therefore, the pdos can be set up to assert when the sfds are in tolerance, the correct input signals are received on the vxx digital pins, and no warnings are received from any of the inputs of the device. the pdos can be used for a variety of functions. the primary function is to provide enable signals for ldos or dc-to-dc converters that generate supplies locally on a board. the pdos can also be used to provide a pwrgd signal when all the sfds are in tolerance or a reset output if one of the sfds goes out of specification (this can be used as a status signal for a dsp, fpga, or other microcontroller). t he pdos can be programmed to pull up to a number of different options. the outputs can be programmed as follows: ? open drain (allowing the user to connect an external pull-up resistor) ? open drain with weak pull-up to v dd ? open drain with strong pull-up to v dd ? open drain with weak pull-up to vpx ? open drain with strong pull-up to vpx ? strong pull-down to gnd ? internally charge-pumped high drive (12 v, pdo1 to pdo6 only) the last option (available only on pdo1 to pdo6) allows the user to directly drive a voltage high enough to fully enhance an external nfet, which is used to isolate, for example, a card-side voltage from a backplane supply (a pdo can sustain greater than 10.5 v into a 1 a load). the pull-down switches can also be used to drive status leds directly. the data driving each of the pdos can come from one of three sources. the source can be enabled in the pdoxcfg configuration register (see the an-721 application note for details). t he data sources are as follows: ? output from the se. ? directly from the smbus. a pdo can be configured so the smbus has direct control over it. this enables software control of the pdos. therefore, a microcontroller can be used to initiate a software power-up/power-down sequence. ? on-chip clock. a 100 khz clock is generated on the device. this clock can be made available on any of the pdos. it can be used, for example, to clock an external device such as an led. default output configuration all of the internal registers in an unprogrammed adm1168 device from the factory are set to 0. because of this, the pdox pins are pulled to gnd by a weak (20 k), on-chip, pull-down resistor. a s the input supply to the adm1168 ramps up on vpx or vh, all pdox pins behave as follows: ? input supply = 0 v to 1.2 v. pdos high impedance. ? input supply = 1.2 v to 2.7 v. pdos pulled to gnd by a weak (20 k), on-chip, pull-down resistor. ? supply > 2.7 v. factory programmed devices continue to pull all pdos to gnd by a weak (20 k), on-chip, pull-down resistor. programmed devices download current eeprom configuration data, and the programmed setup is latched. the pdo then goes to the state demanded by the configuration, providing a known condition for the pdos during power-up. the internal pull-down can be overdriven with an external pull-up of suitable value tied from the pdox pin to the required pull-up voltage. the 20 k resistor must be accounted for in calculating a suitable value. for example, if pdox must be pulled up to 3.3 v, and 5 v is available as an external supply, the pull-up resistor value is given by 3.3 v = 5 v 20 k/( r up + 20 k) therefore, r up = (100 k ? 66 k)/3.3 v = 10 k pdo se data cfg4 cfg5 cfg6 smbus data clk data 10 ? 20k? 10 ? 20k? vp1 sel vp4 10 ? 20k? v dd v fet (pdo1 to pdo6 only) 20k ? 09474-028 figure 18. programmable driver output
adm1168 rev. 0 | page 15 of 28 sequencing engine overview the adm1168 se provides the user with powerful and flexible control of sequencing. the se implements a state machine control of the pdo outputs with state changes conditional on input events. se programs can enable complex control of boards such as power-up and power-down sequence control, fault event handling, and interrupt generation on warnings. a watchdog function that verifies the continued operation of a processor clock can be integrated into the se program. the se can also be controlled via the smbus, giving software or firmware control of the board sequencing. t he se state machine comprises 63 state cells. each state has the following attributes: ? it monitors signals indicating the status of the eight input pins, vp1 to vp3, vh, and vx1 to vx4. ? it can be entered from any other state. ? three exit routes move the state machine onto a next state: sequence detection, fault monitoring, and timeout. ? delay timers for the sequence and timeout blocks can be programmed independently and changed with each state change. the range of timeouts is from 0 ms to 400 ms. ? the output condition of the eight pdo pins is defined and fixed within a state. ? it can transition from one state to the next in less than 20 s, which is the time needed to download a state definition from eeprom to the se. ? it can trigger a write of the black box fault and status registers into the black box section of eeprom. sequence timeout monitor fault state 09474-029 figure 19. state cell the adm1168 offers up to 63 state definitions. the signals monitored to indicate the status of the input pins are the outputs of the sfds. warnings the se also monitors warnings. these warnings can be generated when the adc readings violate their limit register value or when the secondary voltage monitors on vpx and vh are triggered. the warnings are ored together and are available as a single warning input to each of the three blocks that enable exiting a state. smbus jump (unconditional jump) the se can be forced to advance to the next state unconditionally. this enables the user to force the se to advance. examples of the use of this feature include moving to a margining state or debugging a sequence. the smbus jump or go-to command can be seen as another input to sequence and timeout blocks to provide an exit from each state. table 7. sample sequence state entries state sequence timeout monitor idle1 if vx1 is low, go to state idle2. idle2 if vp1 is okay, go to state en3v3. en3v3 if vp2 is okay, go to state en2v5. if vp2 is not okay after 10 ms, go to state dis3v3. if vp1 is not okay, go to state idle1. dis3v3 if vx1 is high, go to state idle1. en2v5 if vp3 is okay, go to state pwrgd. if vp3 is not okay after 20 ms, go to state dis2v5. if vp1 or vp2 is not okay, go to state fsel2. dis2v5 if vx1 is high, go to state idle1. fsel1 if vp3 is not okay, go to state dis2v5. if vp1 or vp2 is not okay, go to state fsel2. fsel2 if vp2 is not okay, go to state dis3v3. if vp1 is not okay, go to state idle1. pwrgd if vx1 is high, go to state dis2v5. if vp 1, vp2, or vp3 is not okay, go to state fsel1.
adm1168 rev. 0 | page 16 of 28 sequencing engine application example the application in this section demonstrates the operation of the se. figure 21 shows how the simple building block of a single se state can be used to build a power-up sequence for a three- supply system. table 8 lists the pdo outputs for each state in the same se implementation. in this system, a good 5 v supply on the vp1 pin and the vx1 pin held low are the triggers required to start a power-up sequence. the sequence next turns on the 3.3 v supply, then the 2.5 v supply (assuming successful turn on of the 3.3 v supply). when all three supplies have turned on correctly, the pwrgd state is entered, where the se remains until a fault occurs on one of the three supplies or until it is instructed to go through a power-down sequence by vx1 going high. faults are dealt with throughout the power-up sequence on a case-by-case basis. the following three sections (the sequence detector section, the monitoring fault detector section, and the timeout detector section) describe the individual blocks and use the sample application shown in figure 21 to demonstrate the actions of the state machine. sequence detector the sequence detector block is used to detect when a step in a sequence has been completed. it looks for one of the se inputs to change state and is most often used as the gate for successful progress through a power-up or power-down sequence. a timer block that is included in this detector can insert delays into a power-up or power-down sequence, if required. timer delays can be set from 10 s to 400 ms. figure 20 is a block diagram of the sequence detector. supply fault detection logic input change or fault detection warnings force flow (unconditional jump) vp1 vx4 invert sequence detector select timer 09474-032 figure 20. sequence detector block diagram if a timer delay is specified, the input to the sequence detector must remain in the defined state for the duration of the timer delay. if the input changes state during the delay, the timer is reset. the sequence detector can also help to identify monitoring faults. in the sample application shown in figure 21 , the fsel1 and fsel2 states first identify which of the vp1, vp2, or vp3 pins has faulted, and then they take appropriate action. idle1 idle2 en3v3 dis3v3 dis2v5 pwrgd fsel1 fsel2 sequence states monitor fault states timeout states vx1 = 0 vp1 = 1 vp1 = 0 (vp1 + vp2) = 0 (vp1 + vp2 + vp3) = 0 (vp1 + vp2) = 0 vp2 = 1 vp3 = 1 vp2 = 0 vx1 = 1 vp3 = 0 vp2 = 0 vp1 = 0 vx1 = 1 vx1 = 1 10ms 20ms en2v5 09474-030 figure 21. sample application flow diagram table 8. pdo outputs for each state pdo outputs idle1 idle2 en3v3 en2v5 dis3v3 dis2v5 pwrgd fsel1 fsel2 pdo1 = 3v3on 0 0 1 1 0 1 1 1 1 pdo2 = 2v5on 0 0 0 1 1 0 1 1 1 pdo3 = fault 0 0 0 0 1 1 0 1 1
adm1168 rev. 0 | page 17 of 28 monitoring fault detector the monitoring fault detector block is used to detect a failure on an input. the logical function implementing this is a wide or gate that can detect when an input deviates from its expected condition. the clearest demonstration of the use of this block is in the pwrgd state, where the monitor block indicates that a failure on one or more of the vpx, vxx, or vh inputs has occurred. no programmable delay is available in this block because the triggering of a fault condition is likely to be caused by a supply falling out of tolerance. in this situation, the device needs to react as quickly as possible. some latency occurs when moving out of this state, however, because it takes a finite amount of time (~20 s) for the state configuration to download from the eeprom into the se. figure 22 is a block diagram of the monitoring fault detector. supply fault detection logic input change or fault detection v p1 v x4 monitoring fault detector mask sense 1-bit fault detector fault warnings mask 1-bit fault detector fault mask sense 1-bit fault detector fault 09474-033 figure 22. monitoring fault detector block diagram timeout detector the timeout detector allows the user to trap a failure to ensure proper progress through a power-up or power-down sequence. in the sample application shown in figure 21 , the timeout next- state transition is from the en3v3 and en2v5 states. for the en3v3 state, the signal 3v3on is asserted on the pdo1 output pin upon entry to this state to turn on a 3.3 v supply. this supply rail is connected to the vp2 pin, and the sequence detector looks for the vp2 pin to go above its undervoltage threshold, which is set in the supply fault detector (sfd) attached to that pin. the power-up sequence progresses when this change is detected. if, however, the supply fails (perhaps due to a short circuit overloading this supply), the timeout block traps the problem. in this example, if the 3.3 v supply fails within 10 ms, the se moves to the dis3v3 state and turns off this supply by bringing pdo1 low. it also indicates that a fault has occurred by taking pdo3 high. timeout delays of 100 s to 400 ms can be programmed. fault and status reporting the adm1168 has a fault latch for recording faults. two registers, fstat1 and fstat2, are set aside for this purpose. a single bit is assigned to each input of the device, and a fault on that input sets the relevant bit. the contents of the fault register can be read out over the smbus to determine which input(s) faulted. the fault register can be enabled or disabled in each state. to latch data from one state, ensure that the fault latch is disabled in the following state. this ensures that only real faults are captured and not, for example, undervoltage conditions that may be present during a power-up or power-down sequence. the adm1168 also has a number of status registers. these include more detailed information, such as whether an undervoltage or overvoltage fault is present on a particular input. the status registers also include information on adc limit faults. there are two sets of these registers with different behaviors. the first set of status registers is not latched in any way and, therefore, can change at any time in response to changes on the inputs. these registers provide information such as the uv and ov state of the inputs, the digital state of the gpi vxx inputs, and the adc warning limit status. the second set of registers update each time the sequence engine changes state and are latched until the next state change. the second set of registers provides the same information as the first set, but in a more compact form. the reason for this is that these registers are used by the black box feature when writing status information for the previous state into eeprom. see the an-721 application note for full details about the adm1168 registers. nonvolatile black box fault recording a section of eeprom, from address 0xf900 to address 0xf9ff, is provided that by default can be used to store user-defined settings and information. part of this section of eeprom, address 0xf980 to address 0xf9ff, can instead be used to store up to 16 fault records. a ny sequencing engine state can be designated as a black box write state. each time the sequence engine enters that state, a fault record is written into eeprom. the fault record provides a snapshot of the entire adm1168 state at the point in time when the last state was exited, just prior to entering the designated black box write state. a fault record contains the following information: ? a flag bit set to 0 after the fault record has been written. ? the state number of the previous state prior to the fault record write state. ? did a sequence, timeout, or monitor condition cause the previous state to exit? ? uvstatx and ovstatx input comparator status. ? vxx gpistat status. ? limstatx status. ? a checksum byte.
adm1168 rev. 0 | page 18 of 28 each fault record contains eight bytes, with each byte taking typically about 250 s to write to eeprom, for a total write time of about 2 ms. after the black box begins to write a fault record into eeprom, the adm1168 ensures that it is complete before attempting to write any additional fault records. this means that if consecutive sequencing engine states are designated as black box write states, then a time delay must be used in the first state to ensure that the fault record is written before moving to the next state. when the adm1168 powers on initially, it performs a search to find the first fault record that has not been written to. it does this by checking the flag bit in each fault record until it finds one where the flag bit is 1. the first fault record is stored at address 0xf980, and at multiples of eight bytes after that, with the last record stored at address 0xf9f8. the fault recorder is only able to write in the eeprom. it is not able to erase the eeprom prior to writing the fault record. therefore, to ensure correct operation, it is important that the fault record eeprom is erased prior to use. when all the eeprom locations for the fault records are used, no more fault records are written. this ensures that the first fault in any cascading fault is stored and not overwritten and lost. to avoid the fault recorder filling up and fault records being lost, an application can periodically poll the adm1168 to determine if there are fault records to be read. alternatively, one of the pdox outputs can be used to generate an interrupt for a processor in the fault record write state to signal the need to come and read one or more fault records. after reading fault records during normal operation, two things must be done before the fault recorder will be able to reuse the eeprom locations. first, the eeprom section must be erased. the fault recorder must then be reset so that it performs its search again for the first unused location of eeprom that is available to store a fault record. black box writes with no external supply in cases where all the input supplies fail, for example, if the card has been removed from a powered backplane, the state machine can be programmed to trigger a write into the black box eeprom. the decoupling capacitors on the rail that power the adm1168 and other loads on the board form an energy reservoir. depending on the other loads on the board and their behavior as the supply rails drop, there may be sufficient energy in the decoupling capacitors to allow the adm1168 to write a complete fault record (eight bytes of data). typically, it takes 2 ms to write to the eight bytes of a fault record. if the adm1168 is powered using a 12 v supply on the vh pin, then a uv threshold at 6 v can be set and used as the state machine trigger to start writing a fault record to eeprom. the higher the threshold is, the earlier the black box write begins, and the more energy available in the decoupling capacitors to ensure it completes successfully. provided the vh supply, or another supply connected to a vpx pin, remains above 3.0 v during the time to write, the entire fault record is always written to the eeprom. in many cases, there should be sufficient decoupling capacitors on a board to power the adm1168 as it writes into the eeprom. in cases where the decoupling capacitors are not able to supply sufficient energy after the board is removed to ensure a complete fault record is written, the value of the capacitor on vddcap may be increased. in the worst case, assuming that no energy is supplied to the adm1168 by the external decoupling capacitors, but that vddcap has 4.75 v on it, then a 47 f is sufficient to guarantee that a single complete black box record can be written to the eeprom.
adm1168 rev. 0 | page 19 of 28 applications diagram 3.3v out vh pdo8 pdo7 signal valid pdo6 pdo2 pdo1 pdo5 pdo4 pdo3 en out dc-to-dc1 in 3.3v out 3v out 5v out 12v out en out dc-to-dc2 in 1.25v out en out dc-to-dc3 in en out ldo in 1.25v out 0.9v out 12v in 5v in 3v in 5v out vp1 3v out vp2 3.3v out vp3 1.25v out vx1 1.2v out vx2 0.9v out vx3 vx4 10f vccp 10f refout 10f vddcap gnd adm1168 pwrgd reset 09474-068 figure 23. applications diagram
adm1168 rev. 0 | page 20 of 28 communicating with the adm1168 configuration downlo ad at power-up the configuration of the adm1168 (undervoltage/overvoltage thresholds, glitch filter timeouts, and pdo configurations) is dictated by the contents of the ram. the ram comprises digital latches that are local to each of the functions on the device. the latches are double-buffered and have two identical latches, latch a and latch b. therefore, when an update to a function occurs, the contents of latch a are updated first, and then the contents of latch b are updated with identical data. the advantages of this architecture are explained in detail in the updating the configuration section. th e two latches are volatile memory and lose their contents at power-down. therefore, the configuration in the ram must be restored at power-up by downloading the contents of the eeprom (nonvolatile memory) to the local latches. this download occurs in steps, as follows: 1. with no power applied to the device, the pdos are all high impedance. 2. when 1.2 v appears on any of the inputs connected to the vdd arbitrator (vh or vpx), the pdos are all weakly pulled to gnd with a 20 k resistor. 3. when the supply rises above the undervoltage lockout of the device (uvlo is 2.5 v), the eeprom starts to download to the ram. 4. the eeprom downloads its contents to all latch as. 5. when the contents of the eeprom are completely downloaded to the latch as, the device controller signals all latch as to download to all latch bs simultaneously, completing the configuration download. 6. at 0.5 ms after the configuration download completes, the first state definition is downloaded from eeprom into the se. note that any attempt to communicate with the device prior to the completion of the download causes the adm1168 to issue a no acknowledge (nack). updating the configuration after power-up, with all the configuration settings loaded from the eeprom into the ram registers, the user may need to alter the configuration of functions on the adm1168, such as changing the undervoltage or overvoltage limit of an sfd, changing the fault output of an sfd, or adjusting the rise time delay of one of the pdos. the adm1168 provides several options that allow the user to update the configuration over the smbus interface. the following three options are controlled in the updcfg register. option 1 update the configuration in real time. the user writes to the ram across the smbus, and the configuration is updated immediately. option 2 update the latch as without updating the latch bs. with this method, the configuration of the adm1168 remains unchanged and continues to operate in the original setup until the instruction is given to update the latch bs. option 3 change the eeprom register contents without changing the ram contents, and then download the revised eeprom contents to the ram registers. with this method, the configuration of the adm1168 remains unchanged and continues to operate in the original setup until the instruction is given to update the ram. the instruction to download from the eeprom in the option 3 section is also a useful way to restore the original eeprom contents if revisions to the configuration are unsatisfactory. for example, if the user needs to alter an overvoltage threshold, the ram register can be updated, as described in the option 1 section. however, if the user is not satisfied with the change and wants to revert to the original programmed value, the device controller can issue a command to download the eeprom contents to the ram again, as described in the option 3 section, restoring the adm1168 to its original configuration. the topology of the adm1168 makes this type of operation possible. the local, volatile registers (ram) are all double- buffered latches. setting bit 0 of the updcfg register to leaves the double buffered latches open at all times, allowing the registers to be updated continuously as they are written to. if bit 0 is set to 0 when a ram write occurs across the smbus, only the first side of the double-buffered latch is written to. the user must then write a 1 to bit 1 of the updcfg register. this generates a pulse to update all the second latches at once. eeprom writes occur in a similar way. the final bit in this register can enable or disable eeprom page erasure. if this bit is set high, the contents of an eeprom page can all be set to 1. if this bit is set low, the contents of a page cannot be erased, even if the command code for page erasure is programmed across the smbus. the bit map for the updcfg register is shown in the an-721 application note . a flow diagram for download at power-up and subsequent configuration updates is shown in figure 24 .
adm1168 rev. 0 | page 21 of 28 power-up (v cc > 2.5v) eeprom e e p r o m l d d a t a r a m l d u p d smbus device controller latch a latch b function (ov threshold on vp1) 09474-035 figure 24. configuration update flow diagram updating the sequencing engine se functions are not updated in the same way as regular configuration latches. the se has its own dedicated 512-byte eeprom for storing state definitions, providing 63 individual states, each with a 64-bit word (one state is reserved). at power-up, the first state is loaded from the se eeprom into the engine itself. when the conditions of this state are met, the next state is loaded from the eeprom into the engine and so on. the loading of each new state takes approximately 10 s. to alter a state, the required changes must be made directly to the eeprom. ram for each state does not exist. the relevant alterations must be made to the 64-bit word, which is then uploaded directly to the eeprom. internal registers the adm1168 contains a large number of data registers. the principal registers are the address pointer register and the configuration registers. address pointer register the address pointer register contains the address that selects one of the other internal registers. when writing to the adm1168, the first byte of data is always a register address that is written to the address pointer register. configuration registers the configuration registers provide control and configuration for various operating parameters of the adm1168. see the an-721 application note . eeprom the adm1168 has two 512-byte cells of nonvolatile, electrically erasable, programmable, read-only memory (eeprom), from address 0xf800 to register address 0xfbff. the eeprom is used for permanent storage of data that is not lost when the adm1168 is powered down. one eeprom cell, 0xf800 to 0xf9ff, contains the configuration data, user information and, if enabled, any fault records of the device; the other section, 0xfa00 to 0xfbff, contains the state definitions for the se. although referred to as read-only memory, the eeprom can be written to, as well as read from, using the serial bus in exactly the same way as the other registers. t he major differences between the eeprom and other registers are as follows: ? an eeprom location must be blank before it can be written to. if it contains data, the data must first be erased. ? writing to the eeprom is slower than writing to the ram. ? writing to the eeprom should be restricted because it has a limited write/cycle life of typically 10,000 write operations due to the usual eeprom wear-out mechanisms. the first eeprom is split into 16 (0 to 15) pages of 32 bytes each. page 0 to page 4, from address 0xf800 to address 0xf89f, hold the configuration data for the applications on the adm1168 (such as the sfds and pdos). these eeprom addresses are the same as the ram register addresses, prefixed by f8. page 5 to page 7, from address 0xf8a0 to address 0xf8ff, are reserved. page 8 to page 11 are available for customer use to store any information that may be required by the customer in their application. customers can store information on page 12 to page 15, or these pages can store the fault records written by the sequencing engine if users have decided to enable writing of the fault records for different states. d ata can be downloaded from the eeprom to the ram in one of the following ways: ? at power-up, when page 0 to page 4 are downloaded. ? by setting bit 0 of the udownld register (0xd8), which performs a user download of page 0 to page 4. when the sequence engine is enabled, it is not possible to access the section of eeprom from address 0xfa00 to address 0xfbff. the sequence engine must be halted before it is possible to read or write to this range. attempting to read or write to this range if the sequence engine is not halted generates a no acknowledge, or nack. read/write access to the configuration and user eeprom ranges from address 0xf800 to address 0xf89f and address 0xf900 to address 0xf9ff depends on whether the black box fault recorder is enabled. if the fault recorder is enabled and one or more states have been set as fault record trigger states, then it is not possible to access any eeprom location in this range without first halting the black box. attempts to read or write to this eeprom range while the fault recorder is operating are acknowledged by the device but do not return any useful data or modify the eeprom in any way.
adm1168 rev. 0 | page 22 of 28 if none of the states are set as fault record trigger states, then the black box is considered disabled, and read/write access is allowed without having to halt the black box fault recorder. serial bus interface the adm1168 is controlled via the serial system management bus (smbus) and is connected to this bus as a slave device under the control of a master device. it takes approximately 1 ms after power-up for the adm1168 to download from its eeprom. therefore, access to the adm1168 is restricted until the download is complete. identifying the adm1168 on the smbus the adm1168 has a 7-bit serial bus slave address (see tabl e 9 ). the device is powered up with a default serial bus address. the five msbs of the address are set to 10001; the two lsbs are determined by the logical states of pin a1 and pin a0. this allows the connection of four adm1168s to one smbus. table 9. serial bus slave address a1 pin a0 pin hex address 7-bit address 1 low low 0x88 1000100x low high 0x8a 1000101x high low 0x8c 1000110x high high 0x8e 1000111x 1 x = read/write bit. the address is shown only as the first 7 msbs. the device also has several identification registers (read-only) that can be read across the smbus. table 10 lists these registers with their values and functions. table 10. identification regi ster values and functions name address value function manid 0xf4 0x41 manufacturer id for analog devices revid 0xf5 0x02 silicon revision mark1 0xf6 0x00 software brand mark2 0xf7 0x00 software brand general smbus timing figure 25 , figure 26 , and figure 27 are timing diagrams for general read and write operations using the smbus. the smbus specification defines specific conditions for different types of read and write operations, which are discussed in the write operations and read operations sections. the general smbus protocol operates in the following three steps. step 1 the master initiates data transfer by establishing a start condition, defined as a high-to-low transition on the serial data line sda, while the serial clock line scl remains high. this indicates that a data stream follows. all slave peripherals connected to the serial bus respond to the start condition and shift in the next eight bits, consisting of a 7-bit slave address (msb first) plus an r/ w bit. this bit determines the direction of the data transfer, that is, whether data is written to or read from the slave device (0 = write, 1 = read). the peripheral whose address corresponds to the transmitted address responds by pulling the data line low during the low period before the ninth clock pulse, known as the acknowledge bit, and by holding it low during the high period of this clock pulse. all other devices on the bus remain idle while the selected device waits for data to be read from or written to it. if the r/ w bit is a 0, the master writes to the slave device. if the r/ w bit is a 1, the master reads from the slave device. step 2 data is sent over the serial bus in sequences of nine clock pulses, eight bits of data followed by an acknowledge bit from the slave device. data transitions on the data line must occur during the low period of the clock signal and remain stable during the high period because a low-to-high transition when the clock is high may be interpreted as a stop signal. if the operation is a write operation, the first data byte after the slave address is a command byte. this command byte tells the slave device what to expect next. it may be an instruction telling the slave device to expect a block write, or it may be a register address that tells the slave where subsequent data is to be written. because data can flow in only one direction, as defined by the r/ w bit, sending a command to a slave device during a read operation is not possible. before a read operation, it may be necessary to perform a write operation to tell the slave what sort of read operation to expect and the address from which data is to be read. step 3 when all data bytes have been read or written, stop conditions are established. in write mode, the master pulls the data line high during the 10 th clock pulse to assert a stop condition. in read mode, the master device releases the sda line during the low period before the ninth clock pulse, but the slave device does not pull it low. this is known as a no acknowledge. the master then takes the data line low during the low period before the 10 th clock pulse and then high during the 10 th clock pulse to assert a stop condition.
adm1168 rev. 0 | page 23 of 28 9 19 9 1 19 1 start by master ack. by slave ack. by slave ack. by slave ack. by slave frame 2 command code frame 1 slave address frame n data byte frame 3 data byte scl sda r/w stop by master scl (continued) sda (continued) d7 a0 a1 1 00 1 0 d6 d5 d4 d3 d2 d1 d0 d7 d6 d5 d4 d3 d2 d1 d0 d7 d6 d5 d4 d3 d2 d1 d0 09474-036 figure 25. general smbus write timing diagram 19 9 1 19 1 9 start by master ack. by slave ack. by master ack. by master no ack. frame 2 data byte frame 1 slave address frame n data byte frame 3 data byte scl sda r/w stop by master scl (continued) sda (continued) d7 a0 a1 1 00 1 0 d6 d5 d4 d3 d2 d1 d0 d7 d6 d5 d4 d3 d2 d1 d0 d7 d6 d5 d4 d3 d2 d1 d0 09474-037 figure 26. general smbus read timing diagram scl sda ps s p t su;sto t hd;sta t su;sta t su;dat t hd;dat t hd;sta t high t buf t low t r t f 09474-038 figure 27. serial bus timing diagram
adm1168 rev. 0 | page 24 of 28 smbus protocols for ram and eeprom the adm1168 contains volatile registers (ram) and nonvolatile registers (eeprom). user ram occupies address 0x00 to address 0xdf; and the eeprom occupies address 0xf800 to address 0xfbff. data can be written to and read from both the ram and the eeprom as single data bytes. data can be written only to unprogrammed eeprom locations. to write new data to a programmed location, the location contents must first be erased. eeprom erasure cannot be done at the byte level. the eeprom is arranged as 32 pages of 32 bytes each, and an entire page must be erased. page erasure is enabled by setting bit 2 in the updcfg register (address 0x90) to 1. if this bit is not set, page erasure cannot occur, even if the command byte (0xfe) is programmed across the smbus. write operations th e smbus specification defines several protocols for different types of read and write operations. the following abbreviations are used in figure 28 to figure 36 : ? s = start ? p = stop ? r = read ? w = write ? a = acknowledge ? a = no acknowledge the adm1168 uses the following smbus write protocols. send byte i n a send byte operation, the master device sends a single command byte to a slave device, as follows: 1. the master device asserts a start condition on sda. 2. the master sends the 7-bit slave address followed by the write bit (low). 3. the addressed slave device asserts an acknowledge (ack) on sda. 4. the master sends a command code. 5. the slave asserts ack on sda. 6. the master asserts a stop condition on sda and the transaction ends. in the adm1168, the send byte protocol is used for two purposes: ? to write a register address to the ram for a subsequent single byte read from the same address, or for a block read or a block write starting at that address, as shown in figure 28 . 24 13 5 slave address ram address (0x00 to 0xdf) sw a a 6 p 09474-039 fi gure 28. setting a ram a ddress for subsequent read ? to erase a page of eeprom memory. eeprom memory can be written to only if it is unprogrammed. before writing to one or more eeprom memory locations that are already programmed, the page(s) containing those locations must first be erased. eeprom memory is erased by writing a command byte. the master sends a command code telling the slave device to erase the page. the adm1168 command code for a page erasure is 0xfe (1111 1110). note that for a page erasure to take place, the page address must be given in the previous write word transaction (see the wr ite byte/word section). in addition, bit 2 in the updcfg register (address 0x90) must be set to 1. see figure 29 . 24 13 5 slave address command byte (0xfe) sw a a 6 p 09474-040 figure 29. eeprom page erasure as soon as the adm1168 receives the command byte, page erasure begins. the master device can send a stop command as soon as it sends the command byte. page erasure takes approximately 20 ms. if the adm1168 is accessed before erasure is complete, it responds with a no acknowledge (nack). write byte/word in a write byte/word operation, the master device sends a command byte and one or two data bytes to the slave device, as follows: 1. the master device asserts a start condition on sda. 2. the master sends the 7-bit slave address followed by the write bit (low). 3. the addressed slave device asserts ack on sda. 4. the master sends a command code. 5. the slave asserts ack on sda. 6. the master sends a data byte. 7. the slave asserts ack on sda. 8. the master sends a data byte or asserts a stop condition. 9. the slave asserts ack on sda. 10. the master asserts a stop condition on sda to end the transaction. in the adm1168, the write byte/word protocol is used for three purposes: ? to write a single byte of data to the ram. in this case, the command byte is ram address 0x00 to ram address 0xdf, and the only data byte is the actual data, as shown in figure 30 . slave address ram address (0x00 to 0xdf) s w a data ap a 24 13 5 76 8 09474-041 figure 30. single byte write to the ram
adm1168 rev. 0 | page 25 of 28 8 ? to set up a 2-byte eeprom address for a subsequent read, write, block read, block write, or page erase. in this case, the command byte is the high byte of eeprom address 0xf8 to eeprom address 0xfb. the only data byte is the low byte of the eeprom address, as shown in figure 31 . un like some eeprom devices that limit block writes to within a page boundary, there is no limitation on the start address when performing a block write to eeprom, except when ? t here must be at least n locations from the start address to the highest eeprom address (0xfbff) to avoid writing to invalid addresses. slave address eeprom address high byte (0xf8 to 0xfb) sw a eeprom address low byte (0x00 to 0xff) ap a 24 13 5 7 6 09474-042 ? an address crosses a page boundary. in this case, both pages must be erased before programming. figure 31. setting an eeprom address note that the adm1168 features a clock extend function for writes to the eeprom. programming an eeprom byte takes approximately 250 s, which limits the smbus clock for repeated or block write operations. the adm1168 pulls scl low and extends the clock pulse when it cannot accept any more data. because a page consists of 32 bytes, only the three msbs of the address low byte are important for page erasure. the lower five bits of the eeprom address low byte specify the addresses within a page and are ignored during an erase operation. read operations ? to write a single byte of data to the eeprom. in this case, the command byte is the high byte of eeprom address 0xf8 to eeprom address 0xfb. the first data byte is the low byte of the eeprom address, and the second data byte is the actual data, as shown in figure 32 . the adm1168 uses the following smbus read protocols. receive byte in a receive byte operation, the master device receives a single byte from a slave device, as follows: slave address eeprom address high byte (0xf8 to 0xfb) sw a eeprom address low byte (0x00 to 0xff) a a 24 13 5 7 a 9 data 8 6 p 1 0 09474-043 1. the master device asserts a start condition on sda. 2. the master sends the 7-bit slave address followed by the read bit (high). 3. t he addressed slave device asserts ack on sda. figure 32. single byte write to the eeprom 4. the master receives a data byte. block write 5. the master asserts nack on sda. in a block write operation, the master device writes a block of data to a slave device, as shown in figure 34 . the start address for a block write must have been set previously. in the adm1168, a send byte operation sets a ram address, and a write byte/word operation sets an eeprom address as follows: 6. the master asserts a stop condition on sda, and the transaction ends. in the adm1168, the receive byte protocol is used to read a single byte of data from a ram or eeprom location whose address has previously been set by a send byte or write byte/ word operation, as shown in figure 33 . 1. the master device asserts a start condition on sda. 2. t he master sends the 7-bit slave address followed by the write bit (low). 23 14 5 slave address srd a t a a 6 p a 09474-045 3. the addressed slave device asserts ack on sda. 4. the master sends a command code that tells the slave device to expect a block write. the adm1168 command code for a block write is 0xfc (1111 1100). figure 33. single byte read from the eeprom or ram 5. the slave asserts ack on sda. 6. the master sends a data byte that tells the slave device how many data bytes are being sent. the smbus specification allows a maximum of 32 data bytes in a block write. 7. the slave asserts ack on sda. 8. the master sends n data bytes. 9. the slave asserts ack on sda after each data byte. 10. the master asserts a stop condition on sda to end the transaction. slave address sw a 2 command 0xfc (block write) 4 13 a 5 byte count 6 a 7 a 91 0 a p a data 1 8 data n data 2 09474-044 figure 34. block write to the eeprom or ram
adm1168 rev. 0 | page 26 of 28 block read in a block read operation, the master device reads a block of data from a slave device. the start address for a block read must have been set previously. in the adm1168, this is done by a send byte operation to set a ram address, or a write byte/word operation to set an eeprom address. the block re ad operation itself consists of a send byte operation that sends a block read command to the slave, immediately followed by a repeated start and a read operation that reads out multiple data bytes, as follows: 1. the master device asserts a start condition on sda. 2. the master sends the 7-bit slave address followed by the write bit (low). 3. the addressed slave device asserts ack on sda. 4. the master sends a command code that tells the slave device to expect a block read. the adm1168 command code for a block read is 0xfd (1111 1101). 5. the slave asserts ack on sda. 6. the master asserts a repeat start condition on sda. 7. the master sends the 7-bit slave address followed by the read bit (high). 8. the slave asserts ack on sda. 9. the adm1168 sends a byte-count data byte that tells the master how many data bytes to expect. the adm1168 always returns 32 data bytes (0x20), which is the maximum allowed by the smbus 1.1 specification. 10. the master asserts ack on sda. 11. the master receives 32 data bytes. 12. the master asserts ack on sda after each data byte. 13. the master asserts a stop condition on sda to end the transaction. see figure 35 . error correction th e adm1168 provides the option of issuing a packet error checking (pec) byte after a write to the ram, a write to the eeprom, a block write to the ram/eeprom, or a block read from the ram/eeprom. this option enables the user to verify that the data received by or sent from the adm1168 is correct. the pec byte is an optional byte sent after that last data byte has been written to or read from the adm1168. the protocol is the same as a block read for step 1 to step 12 and then proceeds as follows: 13. the adm1168 issues a pec byte to the master. the master checks the pec byte and issues another block read, if the pec byte is incorrect. 14. a no acknowledge (nack) is generated after the pec byte to signal the end of the read. 15. the master asserts a stop condition on sda to end the transaction. note that the pec byte is calculated using crc-8. the frame check sequence (fcs) conforms to crc-8 by the polynomial c ( x ) = x 8 + x 2 + x 1 + 1 see the smbus 1.1 specification for details. an example of a block read with the optional pec byte is shown in figure 36 . slave address sw a 2 command 0xfd (block read) 4 13 a 5 s 6 slave address 7 byte count 910 12 11 a ra 8 data 1 data 32 a 13 p a 09474-046 figure 35. block read from the eeprom or ram slave address sw a 2 command 0xfd (block read) 4 13 a 5 s 6 slave address 7 byte count 910 12 11 a ra 8 data 1 data 32 a 13 pec 14 a 15 p a 09474-047 figure 36. block read from the eeprom or ram with pec
adm1168 rev. 0 | page 27 of 28 outline dimensions compliant to jedec standards ms-026-bba view a top view (pins down) 8 1 32 25 24 17 16 9 0.80 bsc lead pitch 9.00 bsc sq 7.00 bsc sq 1.60 max 0.75 0.60 0.45 0.45 0.37 0.30 pin 1 0.20 0.09 1.45 1.40 1.35 0.10 max coplanarity v i e w a r o t a t e d 9 0 c c w seating plane 7 3.5 0 0.15 0.05 figure 37. 32-lead low profile quad flat package [lqfp] (st-32-2) dimensions shown in millimeters ordering guide model 1 temperature range package description package option adm1168astz ?40c to +85c 32-lead low prof ile quad flat package [lqfp] st-32-2 adm1168astz-rl7 ?40c to +85c 32-lead low pr ofile quad flat package [lqfp] st-32-2 EVAL-ADM1168LQEBZ evaluation board 1 z = rohs compliant part.
adm1168 rev. 0 | page 28 of 28 notes ?2011 analog devices, inc. all rights reserved. trademarks and registered trademarks are the property of their respective owners. d09474-0-4/11(0)


▲Up To Search▲   

 
Price & Availability of EVAL-ADM1168LQEBZ

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X